package com.seafood.dto;

import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

/**
 * 地理编码响应DTO
 */
@Data
public class GeocodingResponseDTO {
    
    private String status; // 响应状态
    
    private String message; // 响应消息
    
    private List<GeocodingResultDTO> results; // 编码结果列表
    
    @Data
    public static class GeocodingResultDTO {
        
        private String formattedAddress; // 格式化地址
        
        private BigDecimal latitude; // 纬度
        
        private BigDecimal longitude; // 经度
        
        private String province; // 省份
        
        private String city; // 城市
        
        private String district; // 区县
        
        private String street; // 街道
        
        private String streetNumber; // 门牌号
        
        private Integer accuracy; // 精度级别
        
        private String addressType; // 地址类型
        
        private String businessArea; // 商圈
        
        private List<PoiInfoDTO> pois; // 周边POI信息
    }
    
    @Data
    public static class PoiInfoDTO {
        
        private String name; // POI名称
        
        private String type; // POI类型
        
        private BigDecimal latitude; // POI纬度
        
        private BigDecimal longitude; // POI经度
        
        private Integer distance; // 距离（米）
        
        private String address; // POI地址
    }
}